home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple WWDC 1996
/
WWDC96_1996 (CD).toast
/
Technology Materials
/
MacOS 8 Resources
/
Developer Tools
/
Mac OS 8 Interfaces & Libraries
/
Interfaces
/
PInterfaces
/
TextEncodingPlugin.p
< prev
next >
Wrap
Text File
|
1996-05-01
|
5KB
|
127 lines
{
File: TextEncodingPlugin.p
Contains: Required interface for Text Encoding Converter-Plugins
Version: Technology:
Release: Universal Interfaces 3.0d3 on Copland DR1
Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
Bugs?: If you find a problem with this file, send the file and version
information (from above) and the problem description to:
Internet: apple.bugs@applelink.apple.com
AppleLink: APPLE.BUGS
}
{$IFC UNDEFINED UsingIncludes}
{$SETC UsingIncludes := 0}
{$ENDC}
{$IFC NOT UsingIncludes}
UNIT TextEncodingPlugin;
INTERFACE
{$ENDC}
{$IFC UNDEFINED __TEXTENCODINGPLUGIN__}
{$SETC __TEXTENCODINGPLUGIN__ := 1}
{$I+}
{$SETC TextEncodingPluginIncludes := UsingIncludes}
{$SETC UsingIncludes := 1}
{$IFC UNDEFINED __TYPES__}
{$I Types.p}
{$ENDC}
{$IFC UNDEFINED __NAMEREGISTRY__}
{$I NameRegistry.p}
{$ENDC}
{$IFC UNDEFINED __TEXTENCODINGCONVERTER__}
{$I TextEncodingConverter.p}
{$ENDC}
{$PUSH}
{$ALIGN MAC68K}
{$LibExport+}
{
####################################################################################
Constructor/Destructor Messages
####################################################################################
}
TYPE
TextEncodingPluginInitPtr = ProcPtr; { FUNCTION TextEncodingPluginInitPtr: OSStatus; C; }
{ normal termination }
TextEncodingPluginFreePtr = ProcPtr; { FUNCTION TextEncodingPluginFreePtr: OSStatus; C; }
{ error condition termination }
TextEncodingPluginEjectPtr = ProcPtr; { FUNCTION TextEncodingPluginEjectPtr: OSStatus; C; }
{
####################################################################################
Control Messages
####################################################################################
}
TextEncodingPluginStartIOPtr = ProcPtr; { FUNCTION TextEncodingPluginStartIOPtr: OSStatus; C; }
TextEncodingPluginHaltIOPtr = ProcPtr; { FUNCTION TextEncodingPluginHaltIOPtr: OSStatus; C; }
{
####################################################################################
Functional Messages
####################################################################################
}
TextEncodingPluginCountAvailableTextEncodingsPtr = ProcPtr; { FUNCTION TextEncodingPluginCountAvailableTextEncodingsPtr(VAR numberOfMappings: ItemCount): OSStatus; C; }
TextEncodingPluginGetAvailableTextEncodingsPtr = ProcPtr; { FUNCTION TextEncodingPluginGetAvailableTextEncodingsPtr(VAR availableEncodings: TextEncoding; maxAvailableEncodings: ItemCount; VAR actualAvailableEncodings: ItemCount): OSStatus; C; }
TextEncodingPluginNewEncodingConverterPtr = ProcPtr; { FUNCTION TextEncodingPluginNewEncodingConverterPtr(VAR newEncodingConverter: EncodingConverterRef; inputEncoding: TextEncoding; outputEncoding: TextEncoding): OSStatus; C; }
TextEncodingPluginDisposeEncodingConverterPtr = ProcPtr; { FUNCTION TextEncodingPluginDisposeEncodingConverterPtr(VAR newEncodingConverter: EncodingConverterRef): OSStatus; C; }
TextEncodingPluginConvertTextEncodingPtr = ProcPtr; { FUNCTION TextEncodingPluginConvertTextEncodingPtr(VAR encodingConverter: EncodingConverterRef; clearContext: BOOLEAN; VAR inputText: BytePtr; VAR inputLength: ByteCount; outputBuffer: BytePtr; outputBufferSize: ByteCount; VAR actualOutputLength: ByteCount): OSStatus; C; }
TextEncodingPluginExamineTextEncodingPtr = ProcPtr; { FUNCTION TextEncodingPluginExamineTextEncodingPtr(VAR newEncodingConverter: EncodingConverterRef): OSStatus; C; }
{
####################################################################################
Dispatch Table Definition
####################################################################################
}
CONST
kTextEncodingPluginDispatchTableVersion1 = $0001;
kTextEncodingPluginDispatchTableCurrentVersion = $0001;
TYPE
TextEncodingPluginDispatchTablePtr = ^TextEncodingPluginDispatchTable;
TextEncodingPluginDispatchTable = RECORD
version: INTEGER;
PlugInInit: TextEncodingPluginInitPtr;
PlugInFree: TextEncodingPluginFreePtr;
PlugInEject: TextEncodingPluginEjectPtr;
PlugInStartIO: TextEncodingPluginStartIOPtr;
PlugInHaltIO: TextEncodingPluginHaltIOPtr;
PlugInCountAvailableTextEncodings: TextEncodingPluginCountAvailableTextEncodingsPtr;
PlugInGetAvailableTextEncodings: TextEncodingPluginGetAvailableTextEncodingsPtr;
PlugInNewEncodingConverter: TextEncodingPluginNewEncodingConverterPtr;
PlugInDisposeEncodingConverter: TextEncodingPluginDisposeEncodingConverterPtr;
PlugInConvertTextEncoding: TextEncodingPluginConvertTextEncodingPtr;
PlugInExamineTextEncoding: TextEncodingPluginExamineTextEncodingPtr;
END;
{$ALIGN RESET}
{$POP}
{$SETC UsingIncludes := TextEncodingPluginIncludes}
{$ENDC} {__TEXTENCODINGPLUGIN__}
{$IFC NOT UsingIncludes}
END.
{$ENDC}